﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Entidades.Eventos
{
    public class EveEventoDAL
    {
        public static List<EveEvento> buscar(Entities context, int idTipoEvento, String nombreEvento)
        {
            return context.Eve_Evento.Where(e=> e.idTipoEvento == idTipoEvento && e.nombre.Contains(nombreEvento)).ToList();
        }

        public static EveEvento buscar(Entities context, int idEvento)
        {
            return context.Eve_Evento.Where(e => e.idEvento == idEvento).FirstOrDefault();
        }

        public static void guardar(Entities context, EveEvento eveEvento)
        {
            context.Eve_Evento.AddObject(eveEvento);
            context.SaveChanges();
        }

        public static void editar(Entities context, EveEvento eveEvento)
        {
            context.Eve_Evento.AddObject(eveEvento);
        }

        public static List<EveEvento> listar(Entities context, EveFiltroEvento eveFiltroEvento)
        {
            return context.Eve_Evento.Where(e => 
                (e.nombre.ToUpper().Contains(eveFiltroEvento.Nombre.ToUpper())
                || eveFiltroEvento.Nombre == String.Empty
                )
                && (e.idTipoEvento == eveFiltroEvento.IdTipoEvento || eveFiltroEvento.IdTipoEvento == 0)
                ).ToList();
            //&& e.observacion.Contains(eveFiltroEvento.Observacion)
            //&& (e.estado == eveFiltroEvento.Estado || eveFiltroEvento.Estado == null)
        }

        public static void eliminar(Entities context, EveEvento eveEvento)
        {
            context.Eve_Evento.DeleteObject(eveEvento);
            context.SaveChanges();
        }

    }
}
